# Create a new group question

Adds a new question that prospective members must answer when joining the group. Requires GroupQuestions.Manage permission. Questions can be of type TEXT (free-form answer), SINGLE_CHOICE (one option), or MULTIPLE_CHOICE (multiple options). For choice questions, provide the available options in the choices array. The creation is tracked in the audit log.

RBAC: requires GroupQuestions.Manage

Endpoint: POST /api/v1/groups/{groupId}/questions
Version: 1.0
Security: header

## Path parameters:

  - `groupId` (string, required)
    The unique identifier of the group to add the question to
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

## Request fields (application/json):

  - `questionText` (string, required)
    The question text displayed to users (max 200 characters)
    Example: "Why do you want to join this group?"

  - `type` (string, required)
    Question type determining the answer format (TEXT, SINGLE_CHOICE, MULTIPLE_CHOICE)
    Enum: "TEXT", "MULTIPLE_CHOICE", "SINGLE_CHOICE"

  - `choices` (array)
    Available choices for SINGLE_CHOICE or MULTIPLE_CHOICE questions. Empty for TEXT questions.

  - `choices.text` (string, required)
    The display text for this choice option (max 60 characters)
    Example: "I want to learn from others"

  - `choices.order` (integer, required)
    Display order for this choice (lower values appear first)

  - `ordering` (integer, required)
    Display order position - questions with lower values appear first
    Example: 1000

## Response 200 fields (application/json):

  - `questionText` (string, required)
    The question text displayed to users (max 200 characters)
    Example: "Why do you want to join this group?"

  - `type` (string, required)
    Question type determining the answer format (TEXT, SINGLE_CHOICE, MULTIPLE_CHOICE)
    Enum: "TEXT", "MULTIPLE_CHOICE", "SINGLE_CHOICE"

  - `choices` (array)
    Available choices for SINGLE_CHOICE or MULTIPLE_CHOICE questions. Empty for TEXT questions.

  - `choices.text` (string, required)
    The display text for this choice option (max 60 characters)
    Example: "I want to learn from others"

  - `choices.order` (integer, required)
    Display order for this choice (lower values appear first)

  - `ordering` (integer, required)
    Display order position - questions with lower values appear first
    Example: 1000

  - `id` (string, required)
    Unique identifier for the question
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

## Response 400 fields (application/json):

  - `errorCode` (string, required)
    Error code

  - `message` (string, required)
    Error message

  - `docUrl` (string)
    Link to documentation

## Response 401 fields (application/json):

  - `errorCode` (string, required)
    Error code

  - `message` (string, required)
    Error message

  - `docUrl` (string)
    Link to documentation

## Response 403 fields (application/json):

  - `errorCode` (string, required)
    Error code

  - `message` (string, required)
    Error message

  - `docUrl` (string)
    Link to documentation


